An Extensible Markup Language (XML), which is a general-purpose data description language, is characterized in that it can have a structure in which structured data and unstructured data are mixed in one document, it is easily processed by a computer, and it can improve readability. Therefore, the XML has been widely spread as a common data format to various kinds of computerized data. The computerized data (hereinafter, referred to as XML data) described with the XML is structured data in which elements with tags (marked up) are represented by a tree structure.
In recent years, since a large amount of XML data is used, an XML database that is suitable to store and appropriately manage the XML data has been developed. In addition, an integrated search technique has been developed, which searches a plurality of XML databases (data sets of XML data) distributed over the network like one database using a query expression described with XQuery which is a standard query language.
A problem of the integrated search is the difference in the schema (data structures of XML data) among a plurality of XML databases to be integrated. Since the XML database does not need to define the schema, it has high flexibility and expandability capable of responding to various kinds of XML data. However, in some cases, the data structure of the stored XML data varies depending on the database. Therefore, even when a query expression common to a plurality of XML databases to be integrated is performed, XML data suitable for search conditions is hit in a certain XML database, but XML data that should be semantically suitable is not hit due to the difference in data structure in another XML database. In particular, when XQuery is used as the query language, this tendency is strong since strict matching having a structure or a vocabulary as a condition is basically required.
As a method of absorbing the difference in the schema among a plurality of databases and performing an integrated search with a common query expression, a method has been known in which a master server that converts the common query expression into a query expression suitable for each of the plurality of databases is provided on the network. In general, a query expression conversion rule is defined in advance for each database to be integrated and is stored in the master server. Then, when a common query expression is input to the master server, the master server converts the common query expression so as to be suitable for the schema of each of a plurality of databases to be integrated and a query is performed for each database.